package pe.edu.sistemas.postgrado.samupg.domain.model;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import static javax.persistence.GenerationType.IDENTITY;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.Table;

@Entity
@Table(name = "alternativa", catalog = "bd_samupg")
public class Alternativa implements java.io.Serializable {

    private Integer alternatId;
    private Pregunta pregunta;
    private String descripcion;
    private Boolean correcta;

    public Alternativa() {
    }

    public Alternativa(Pregunta pregunta) {
        this.pregunta = pregunta;
    }

    public Alternativa(Pregunta pregunta, String alternatDescripcion, Boolean alternatCorrecta) {
        this.pregunta = pregunta;
        this.descripcion = alternatDescripcion;
        this.correcta = alternatCorrecta;
    }

    @Id
    @GeneratedValue(strategy = IDENTITY)
    @Column(name = "alternat_id", unique = true, nullable = false)
    public Integer getAlternatId() {
        return this.alternatId;
    }

    public void setAlternatId(Integer alternatId) {
        this.alternatId = alternatId;
    }

    @ManyToOne(fetch = FetchType.LAZY)
    @JoinColumn(name = "alternat_pregunta_id", nullable = false)
    public Pregunta getPregunta() {
        return this.pregunta;
    }

    public void setPregunta(Pregunta pregunta) {
        this.pregunta = pregunta;
    }

    @Column(name = "alternat_descripcion", length = 100)
    public String getDescripcion() {
        return this.descripcion;
    }

    public void setDescripcion(String descripcion) {
        this.descripcion = descripcion;
    }

    @Column(name = "alternat_correcta")
    public Boolean getCorrecta() {
        return this.correcta;
    }

    public void setCorrecta(Boolean correcta) {
        this.correcta = correcta;
    }
}
